package com.foreverwin.mes.production.service;

import com.baomidou.mybatisplus.plugins.Page;
import com.foreverwin.mes.production.dto.CleanExeDto;
import com.foreverwin.mes.production.dto.CleanExeReviewDto;
import com.foreverwin.mes.production.model.CleanData;
import com.foreverwin.mes.production.model.CleanExe;
import com.baomidou.mybatisplus.service.IService;
import com.foreverwin.mes.core.base.FrontPage;
import com.foreverwin.mes.production.model.CleanExeItem;
import com.foreverwin.mes.production.vo.CleanExeReviewVo;
import com.foreverwin.mes.production.vo.CleanExeVo;

import java.util.List;

/**
 * <p>
 * 清洁执行表 服务类
 * </p>
 *
 * @author Max
 * @since 2020-02-11
 */
public interface CleanExeService extends IService<CleanExe> {

    /**
     *  分页查询
     * @param frontPage
     * @return
     */
    Page<CleanExe> selectPage(FrontPage<CleanExe> frontPage, CleanExe cleanExe);

    List<CleanExe> selectList(CleanExe cleanExe);

    /**
     * 查询任务明细及状态
     * @param zCleanExeBo
     * @return
     */
    List<CleanExeVo> selectCleanTaskList (String zCleanExeBo);

    /**
     * 清洁任务查询
     * @param cleanData
     * @return
     */
    CleanExeVo result (CleanData cleanData);

    /**
     * 任务开始
     * @param cleanData
     * @return
     */
    CleanExeVo startResult (CleanData cleanData);
    /**
     * 任务完成
     * @param cleanExeDto
     * @return
     */
    CleanExeVo endResult (CleanExeDto cleanExeDto);
    /**
     * 任务取消
     * @param cleanExeDto
     * @return
     */
    CleanExeVo cancelResult (CleanExeDto cleanExeDto);
    /**
     * 修改
     * @param cleanExeDto
     * @return
     */
    CleanExeVo updateResult (CleanExeDto cleanExeDto);
    /**
     * 检索待审核任务
     * @return
     */
    CleanExeReviewVo pendingResult (CleanExeReviewDto cleanExeReviewDto);
    /**
     * 查询待审核任务
     */
    List<CleanExeReviewVo> selectReviewExe (CleanExeReviewDto cleanExeReviewDto);
    /**
     * 查询待审核任务
     */
    CleanExeReviewDto saveReviewExe (CleanExeReviewDto cleanExeReviewDto);
}